package com.ctshk.rpc.order.tour.service;

import com.ctshk.common.dto.Result;
import com.ctshk.common.model.PageResponse;
import com.ctshk.rpc.order.tour.dto.SeriesOrderTouristVisaDetailDTO;
import com.ctshk.rpc.order.tour.dto.SeriesOrderTouristVisaListDTO;
import com.ctshk.rpc.order.tour.req.*;

import java.util.List;

/**
 * <p>
 * 系列团游客签证记录 服务类
 * </p>
 *
 * @author 谭响
 * @since 2021-01-27
 */
public interface ISeriesOrderTouristVisaService {

//    /**
//     * 添加
//     */
//    Result add(SeriesOrderTouristVisaAddReq req);

    /**
     * 保存批量
     */
    Result saveBatch(List<SeriesOrderTouristVisaSaveBatchReq> listReq);

    /**
     * 保存或更新批量
     */
    Result saveOrUpdateBatch(List<SeriesOrderTouristVisaSaveBatchReq> listReq);

    /**
     * 列表
     */
    PageResponse<SeriesOrderTouristVisaListDTO> list(SeriesOrderTouristVisaListReq req);

    /**
     * 提交批量
     */
    Result submitBatch(SeriesOrderTouristVisaSubmitBatchReq req);

    /**
     * 送签批量
     */
    Result sendBatch(SeriesOrderTouristVisaSendBatchReq req);

    /**
     * 登记批量
     */
    Result enterBatch(SeriesOrderTouristVisaEnterBatchReq req);

    /**
     * 补充批量
     */
    Result supplementBatch(SeriesOrderTouristVisaSupplementBatchReq req);

    /**
     * 出签批量
     */
    Result outBatch(SeriesOrderTouristVisaOutBatchReq req);

    /**
     * 详情
     */
    Result<SeriesOrderTouristVisaDetailDTO> detail(SeriesOrderTouristVisaDetailReq req);
}
